package com.nuanshui.framework.utils;

public class HtmlUtils {
	public static String strToHtml(String text) {
		if (text == null || text.length() == 0)
			return "";
		StringBuilder rBuf = new StringBuilder();
		boolean newLine = true; // 新行标记 直到出现非' '字符转换为false

		for (int i = 0; i < text.length(); i++) {
			char ch = text.charAt(i);
			if (newLine && ch != ' ')
				newLine = false;

			switch (ch) {
			case ' ':
				if (i == 0) {
					rBuf.append("&nbsp;");
				} else {
					if (text.charAt(i - 1) == ' ')
						rBuf.append("&nbsp;");
					else {
						rBuf.append(' ');
					}
				}
				break;
			case '&':
				rBuf.append("&amp;");
				break;
			case '>':
				rBuf.append("&gt;");
				break;
			case '<':
				rBuf.append("&lt;");
				break;
			case '"':
				rBuf.append("&quot;");
				break;
			case '\n':
				rBuf.append("<br>");
				newLine = true;
				break;
			default:
				rBuf.append(ch);
			}
		}
		return rBuf.toString();
	}
}
